1. Field of the Invention
The present invention relates generally to the field of scrambling systems and more specifically, to an external security module for a television signal decoder of a broadcast, satellite, or cable television transmission system. The present invention has particular application for B-type Multiplexed Analog Component (B-MAC) satellite transmission, but may also be used for NTSC (National Television Standards Committee), PAL, SECAM, or proposed high definition television formats. In addition, the scrambling system of the present invention can be used in applications in related fields such as electronic banking networks, telephone switching systems, cellular telephone networks, computer networks, etc. The system has particular application to so-called "conditional-access" multichannel television systems, where the viewer may have access to several "basic" channels, one or more "premium" or extra-cost channels as well as "pay-per-view" programs.
2. Description of the Relevant Art
In a pay television system, a pay television service provider typically protects the signal from unauthorized subscribers and pirates through scrambling.
For the purposes of the following discussion and this invention, the term "subscriber" means one who is paying for the television service. The "subscriber" could thus be an individual consumer with a decoder in his own home, or could be a system operator such as a local cable TV operator, or a small network operator such as a Hotel/Motel operator with a central decoder for all televisions in the Hotel or Motel. In addition, the "subscriber" could be an industrial user, as described in U.S. Pat. No. 4,866,770 assigned to the same assignee as the present application and incorporated herein by reference.
For the purposes of this invention, a network is defined as a program source, (such as a pay television provider), an encoder, (sometimes called a "head end"), a transmission means (satellite, cable, radio wave, etc.) and a series of decoders used by the subscribers as described above. A system is defined as a program source, an encoder, a transmission means, and a single receiving decoder. The system model is used to describe how an individual decoder in a network interacts with the encoder.
The scrambling process is accomplished via a key which may itself be encrypted. Each subscriber wishing to receive the signal is provided with a decoder having an identification number which is unique to the decoder. The decoder may be individually authorized with a key to descramble the scrambled signal, provided appropriate payments are made for service. Authorization is accomplished by distributing descrambling algorithms which work in combination with the key (and other information) to paying subscribers, and by denying that information to non-subscribers and to all would-be pirates.
The key may be transmitted as a data signal embedded in the normal television transmission associated with the identification number of the decoder. In a typical television signal, there are so-called "vertical blanking intervals" (VBI) occurring in each field and "horizontal blanking intervals" (HBI) occurring in each line between the chrominance and luminance signals. Various other signals can be sent "in-band" in the vertical and horizontal blanking intervals including additional audio channels, data, and teletext messages. The key can be embedded in these "blanking intervals" as is well known in the art. Attention is drawn to U.S. Pat. No. 4,829,569 assigned to the same assignee as the present application and incorporated herein by reference, showing how such data can be embedded in a B-MAC signal. Alternatively, the key may be sent "out-of-band" over a separate data channel or even over a telephone line.
Maintaining security in a conditional-access television network depends on the following requirements:
(i) The signal scrambling techniques must be sufficiently complex to insure that direct encryptographic attack is not practical.
(ii) keys distributed to an authorized decoder cannot be read out and transferred to other decoders.
The first condition can be satisfied by practical scrambling algorithms now available such as the DES (Data Encryption Standard) or related algorithmns.
The second condition requires the physical security of certain devices within the television signal decoder and is much more difficult to satisfy. Such a device must prevent observation of both the key decryption process and the partially decrypted key signals.
FIG. 1 shows a prior art conditional-access system for satellite transmission. In encoder 101, the source program information 102 which comprises video signals, audio signals, and data is scrambled in program scrambler 103 using a key from key memory 104. The scrambling techniques used may be any such techniques which are well known in the art. The key can be a signal or code number used in the scrambling process which is also required to "unlock" or descramble the program in program descrambler 108 in decoder 106. In practice, one key can be used (single layer encryption) or more than one key (not shown). The key is usually changed with time (i.e. - monthly) to discourage piracy. The scrambled programs and the key are transmitted through satellite link 105, and received by conditional-access decoder 106. Decoder 106 recovers the key from the received signal, stores it in key memory 107 and applies it to program descrambler 108 which descrambles the scrambled program received over satellite link 105, and outputs unscrambled program 109. The system is not totally secure, as the key is transmitted in the clear through the channel and is available for recovery by pirates.
To overcome this difficulty and referring to prior art FIG. 2, a method of protecting the key during distribution is introduced into the system of FIG. 1. Prior to transmission, the key used to scramble source program 202 in program scrambler 203 is recovered from key memory 204 and itself encrypted in key encryptor 210 using a secret serial number (SSN) from secret serial number database 211 which contains a list of the secret serial numbers of all legitimate subscribers. These secret serial numbers may relate to the unique identification numbers mentioned above for each decoder of a network of such decoders. The source program has now been scrambled using the key, and the key itself has been encrypted using a secret serial number. Thus, the key is not subject to compromise or recovery during transmission in comparison with the system of FIG. 1. In order to scramble the program, the pirate must first obtain the secret serial number of a legitimate decoder, match it with the appropriately encrypted key, decrypt the key, and then descramble the program. The secret serial number is installed in decoder 206, for example, during manufacture in SSN memory 212 resident in decoder 206. The secret serial number is therefore unavailable to pirates provided that decoder 206 remains physically secure.
Each secret serial number is unique to an individual decoder or, at least, unique to a group of decoders in order to be reasonably secure. The encrypted key may therefore be transmitted to each decoder individually by cycling through a database 211, containing all the secret serial numbers of the network in encoder 201 and forming a separate key distribution message in an addressed data packet individually addressed to each authorized decoder in the network. An individual decoder recognizes when its encrypted key has been received by reading the key distribution message attached to the encrypted key.
In known B-MAC systems, the key is distributed in an addressed data packet individually addressed to a particular subscriber's decoder by means of its unique identification number. The addressed data packet is typically inserted in lines 4 through 8 of the vertical blanking interval. Each addressed data packet is typically addressed to one individual decoder. As there are sixty fields generated per second (30 frames of 2 interlaced fields each) in a B-MAC or NTSC television signal, at the rate of one addressed data packet per field, a possible sixty different decoders (or groups of decoders) can be addressed each second, or 3600 per minute, 215,000 per hour, and over 5 million per day. Since each decoder need only be addressed when the service level or encryption level changes, there are sufficient frames available to individually address each decoder even in large systems. The address rate of the decoders may be increased by transmitting more than one addressed data packet per field. Additional data packets may be inserted in the vertical blanking interval or in the horizontal blanking intervals of each frame. The total number of possible addressable decoders is a function of the number on data bits available for decoder addresses. The B-MAC format typically uses 28 bits for decoder addresses, allowing for over 268 million possible decoder addresses. Attention is drawn to the United States Advanced Television Systems Committee Report T2/62"MULTIPLEXED ANALOG COMPONENT TELEVISION BROADCAST SYSTEM PARAMETER SPECIFICATIONS", incorporated herein by reference, which describes the data format in a B-MAC signal.
After receiving the addressed data packet, key decryptor 213 then decrypts the key using the secret serial number stored in SSN memory 212. If service to any decoder 206 in the network is to be terminated, the secret serial number for that decoder is simply deleted from SSN database 211, and decoder 206 is deauthorized at the beginning of the next key period.
In a decoder such as the one shown in FIG. 2, the pay television provider has to rely on the physical security of the decoder box itself to prevent a pirate from reading or modifying the secret serial number and key memories in the decoder or observing the key decryption process. In order to provide the necessary physical security, decoder boxes can be equipped with tamper-proof seals, specially headed screws and fasteners, or other tamper resistant packaging to make physical compromise of the decoder difficult. The subscriber is aware that tampering with the decoder could alter the tamper-proof seals or damage the decoder and subsequent examination could lead to discovery.
There are several disadvantages of relying on the physical security of the decoder to maintain system security. First, the pay television provider has to maintain ownership and control over all of the decoders of the network and then rent or lease the decoders to subscribers. The pay television provider is thus responsible for maintenance of all decoders and must maintain an expensive parts inventory and maintenance staff. In addition, in order to initiate service, a serviceperson must make a personal visit to the subscriber's location to install the decoder. In a pay television satellite system, such installation and service calls could be quite costly for remote installations which could be located anywhere in the world. Further, the physical security of a decoder could be breached without fear of discovery if a pirate could obtain a decoder that had been stolen either during the distribution process or from an individual subscriber's home.
Hence, the system of FIG. 2 can be secure only under the following conditions:
(i) It must be impossible to read or modify the SSN and key memories in the decoder.
(ii) It must be impossible to observe the key decryption process, or the links between the four elements (207, 208, 212, and 213) of the decoder.
One way to achieve both of these goals is by the use of a so-called "secure microprocessor".
FIG. 3 shows a block diagram of a typical prior art microprocessor 320 with processor 321, program memory 322, memory address bus 328, memory data 326 and memory data bus 327. In such a device, input data 323 is processed according to a program stored in program memory 322, producing output data 324. Program memory 322 can be "read out" through memory data bus 327. That is, the memory can be stepped through by sequentially incrementing memory address 325 through memory address bus 328 into program memory 322. Output memory data 326 from memory data bus 327 will reveal the entire program contents of microprocessor 320, including any stored descrambling algorithm and secret serial number. With such data, a pirate can easily decrypt a key transmitted through satellite link 205 of FIG. 2.
FIG. 4 shows a block diagram of an ideal secure microprocessor 420 adapted for securing an algorithm and secret serial number according to one aspect of the present invention. The major difference between secure microprocessor 420 of FIG. 4 and microprocessor 320 of FIG. 3 is that both memory address bus 328 and memory data bus 327 are absent, so there is no way to step through program memory 422 for the purpose of reading or writing. Memory references are executed only by processor 421 according to its mask-programmed code which cannot be changed. All input data 423 is treated as data for processing, and all output data 424 is the result of processing input data 423. There is no mechanism for reading or modifying the content of program memory 422 via the data inputs.
Modern devices are close approximation to this ideal secure microprocessor. There is, however, one requirement which causes a variation from the ideal. Following manufacture, there must be a mechanism available to write into memory 422 the decoder specific secret serial number 430, as well as decryption algorithm 434. If this facility were available to a pirate, he could modify the secret serial number for the purpose of cloning. Therefore, this facility must be permanently disabled after the secret serial number has been entered.
A variety of techniques may be used to disable the facility for writing into the memory. Secure microprocessor 420 could be provided with on-chip fusible data links 431, a software lock, or similar means for enabling the secret serial number 430 and descrambling algorithm 434 to be loaded into memory 422 at manufacture. Then, for example, the fusible links shown in dashed lines are destroyed so that a pirate has no access to descrambling algorithm 434 or secret serial number 430 stored in program memory 422.
In an alternative embodiment, the microprocessor of FIG. 4 can be secured with an "E.sup.2 bit," The "E.sup.2 bit", a form of software lock, will cause the entire memory (typically EEPROM) to be erased if an attempt is made to read out the contents of the memory. The "E.sup.2 bit" provides two advantages; first, the memory is secured from would-be pirates, and second, the memory erasure will indicate that tampering has occurred.
A pirate would have to have access to extensive micro-chip facilities and a significant budget to compromise such a secure microprocessor. The physical security of the processor would have to be breached, destroying the processor and contents. However, integrated circuit technology continuously improves, and unexpected developments could occur which might enable attacks to be made at the microscopic level which are more economic than those available today. Further, the worldwide market for pirate decoders for satellite transmissions would provide the economic incentive to the increasingly sophisticated pirate electronics industry to compromise such a unit.
Copying a single decoder comprising a microprocessor according to FIG. 4 could lead to decoder clones based on the single secret serial number in that single decoder. Discovery would result in the termination of that secret serial number, and thus termination of all of the clones. However, a pirate would also have the option of using the single compromised unit to recover the key. The pirate could then develop a decoder design which would accept the key as a direct input. These pirate units could then be illegally distributed to subscribers, who would pay the pirate for a monthly update of the key. The consequence of a security breach could become extremely damaging to the pay television provider.
Pay television providers are therefore at risk if security depends exclusively on the physical defenses of the secure microprocessor. FIG. 5 shows a device which attempts to overcome the disadvantages of the devices of FIGS. 1 and 2 by providing a security device in a replaceable security module 514. Replaceable security module 514 comprises key decryptor 513, secret serial number memory 512 and key memory 507. As in FIG. 2, encoder 501 scrambles source program 502 comprising video signals, audio signals and data in program scrambler 503 using a key from key memory 504. The key is encrypted in key encryptor 510 using a secret serial number (SSN) from secret serial number database 511 which contains a list of the secret serial numbers of all legitimate subscribers.
The same SSN is installed in secret serial number memory 512 in replaceable security module 514 which is removably attachable to decoder 506. Key decryptor 513 of replaceable security module 514 decrypts the key using the secret serial number stored in secret serial number memory 512. The decrypted key is then stored in key memory 507. Unlike FIG. 2, the entire replaceable security module is removably attached to decoder 506. Program descrambler 508 reads the decrypted key from key memory 507 in replaceable security module 514 and uses the key to descramble and output descrambled program 509. Removable security module 514 is designed to be replaced by the subscriber, preferably without any special tools and, thus, most conventionally may comprise a plug-in module.
The use of a plug-in module gives the pay television provider the ability to upgrade the technology in the security device by swapping it out at very low cost. In the event of a security breach, a new replaceable security module containing the program scrambling algorithm and SSN could be mailed out to authorized subscribers. The authorized subscribers could then remove the old replaceable security module from their decoder and insert the new replaceable security module themselves. System security is thus recovered without the expense of replacing the entire decoder or the expense of sending a service person to replace the replaceable security modules in each decoder. In addition, it is not necessary for the pay television provider to own the decoder itself. The decoder can be a generic commercially available unit purchased by the subscriber, or even integrated into the television itself. To initiate service, the pay television provider need only mail the replaceable security module to the subscriber and no service call is necessary.
Although the replaceable security module has the advantages of providing a guarantee that network security is recoverable following a breach, it also has some disadvantages. All the security resides in replaceable security module 514, and decoder 506 itself is a generic unit. The key signal which is generated by replaceable security module 514 is observable at its transfer point to decoder 506. The key can, however, be changed sufficiently often to ensure that it has no value to a potential pirate.
The problem with this approach is that a given removable security module 514 will operate with any decoder 506, and that tampering with replaceable security module 514 does not involve damage to decoder 506. Consequently, if replaceable security module 514 were to be compromised, piracy would become widespread very rapidly.
Although the devices as described above show a single key to scramble the program signal (so-called "single layer encryption") any of the prior art devices could also be practiced using a multiple key ("two layer", "three layer", etc.) scrambling system. FIG. 6 shows an example of a prior art two layer encryption encoder 601. Encoder 601 contains secret serial number database 611 which contains a list of secret serial numbers for all authorized subscribers. Key memory 604 stores the "Key of the Month" (KOM) which in this embodiment can be either an "even" key for even months (February, April, June, etc.) or an "odd" key for odd months (January, March, May, etc.). The key could also be different for each month of the year, or could be made even more unique, depending on the available data bits for such a key. In addition, the key could be changed more frequently or less frequently than the monthly basis shown here.
Key encryptor 610 encrypts the key selected from key memory 604 and outputs a series of encrypted keys E.sub.SSN [KOM] each encrypted with a secret serial number from secret serial number database 611, to data multiplexor 635. Seed memory 636 contains a "seed" which is used for scrambling the audio and video signals. The "seed" can also be a data code or a signal similar to the key described above. Seed encryptor 637 encrypts the seed with the key of the month and outputs the encrypted seed E.sub.KOM [SEED] to data multiplexor 635. Thus the key has been encrypted with the secret serial number, and the seed encrypted with the key. Neither the key nor the seed can be easily recovered during transmission.
In this embodiment, source program 602 comprises a Multiplexed Analog Video (MAC) signal 639 with the typical chrominance and luminance signals described previously, along with multiplexed audio data 638 which may comprise several different audio and non-audio (data) signals. For example, there may be at least two channels of audio (stereo) and additional channels of teletext for the hearing impaired. In addition, there may be additional channels of audio related to the video signal such as foreign language translations, unrelated audio signals such as radio programs or data signals such as subscriber messages, computer data, etc. All of these signals are digitized and multiplexed together, as is well known in the art, and the resulting multiplexed audio data 638 is then ready to be scrambled.
The seed passes through pseudo-random bit sequencer (PRBS) 643 and then is added to multiplexed audio data 638 in adder 644. Together, pseudo-random bit sequencer (PRBS) 643 and adder 644 comprise a bit-by-bit encryptor 645 as is well known in the art. The resulting scrambled multiplexed audio data is then passed to data multiplexor 635 and is multiplexed with the encrypted seed and key.
MAC video signal 639 is scrambled in line translation scrambler 603 which scrambles the lines of the MAC signal using the "seed" from seed memory 636 for the scrambling algorithm. The resulting scrambled MAC signal is then sent to multiplexor 632 which multiplexes the scrambled MAC signal with the output from data multiplexor 635. The multiplexed data output of data multiplexer 635 is modulated into pulse amplitude modulation (PAM) format by P.A.M. modulator 645. The output B-MAC signal 646 contains MAC video signal 639 and multiplexed PAM audio data 638, both scrambled with the seed, along with the seed encrypted with the key of the month, and a series of keys of the month which have been encrypted with the secret serial numbers of the subscriber's decoders, all multiplexed together.
In order to descramble the B-MAC signal 646, a pirate must be able to decrypt one of the encrypted keys, and use that key to decrypt the seed. However, as in the single layer encryption device described in FIG. 2, the pirate only needs to comprise one of the decoders in order to obtain a secret serial number, and thus decrypt the key. With the key, a pirate can then decrypt the seed, and with the seed, descramble the program signal. Additional "layers" of encryption (i.e.-more seeds and keys) make pirating more cumbersome, as the pirate must decrypt more seeds and keys, however, once the first key has been decrypted, the subsequent keys and seeds can be decrypted as well. In the embodiment shown in FIG. 6, keys need be decrypted every other month (even months and odd months) for the pirate to be able to descramble the program signal all year. The secret serial numbers, seed, and key, as used in FIG. 6, can be used effectively by the pay television provider to terminate a particular decoder by secret serial number and generally discourage piracy by amateurs. However, while this system has not yet been compromised, a determined pirate may compromise such a multi-layered encryption system with the aid of a compromised decoder, the heart of such piracy being the gaining of access to a secret serial number.
In view of the deficiencies of the above prior art devices, it still remains a requirement in the art to provide a scrambling system for pay television systems which does not rely solely on the physical security of the decoder components to maintain system integrity.